package com.piggy.logi.sys.bo;

import com.piggy.common.core.web.domain.BaseTenantEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.util.Date;
import javax.validation.constraints.*;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

/**
 * 项目管理编辑对象 logi_project
 *
 * @author piggy
 * @date 2023-08-18
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel("项目管理编辑对象")
public class LogiProjectEditBo extends BaseTenantEntity {


    /** 主键 */
    @ApiModelProperty("主键")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    protected Long id;

    /** 项目名称 */
    @ApiModelProperty("项目名称")
    protected String projectName;

    /** 客户ID */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty("客户ID")
    protected Long customerId;

    /** 负责人 */
    @ApiModelProperty("负责人")
    protected String leader;

    /** 联系电话 */
    @ApiModelProperty("联系电话")
    protected String phone;

    /** 地区id */
    @ApiModelProperty("地区id")
    protected Integer districtId;

    /** 地址 */
    @ApiModelProperty("地址")
    protected String address;

    /** 开始日期 */
    @ApiModelProperty("开始日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    protected Date beginDate;

    /** 结束日期 */
    @ApiModelProperty("结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    protected Date endDate;

    /** 结算类型 */
    @ApiModelProperty("结算类型")
    protected String settleType;

    /** 附加信息 */
    @ApiModelProperty("附加信息")
    protected String attachInfo;

    /** 现付 */
    @ApiModelProperty("现付")
    protected BigDecimal spotPay;

    /** 到付 */
    @ApiModelProperty("到付")
    protected BigDecimal freightPay;

    /** 欠付 */
    @ApiModelProperty("欠付")
    protected BigDecimal arrearsPay;

    /** 回单付 */
    @ApiModelProperty("回单付")
    protected BigDecimal receiptPay;

    /** 更新者 */
    @ApiModelProperty("更新者")
    protected String updateBy;

    /** 月结金额 */
    @ApiModelProperty("月结金额")
    protected BigDecimal monthlyBalance;

    /** 更新时间 */
    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    protected Date updateTime;

    /** 月结天数 */
    @ApiModelProperty("月结天数")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    protected Long monthlyDays;

    /** 附加信息 */
    @ApiModelProperty("备注")
    protected String remark;

}
